import log from '@dfeidao/atom-nodejs/logger/log';
import count from '@dfeidao/atom-nodejs/db/count';
import complex_query from "@dfeidao/atom-nodejs/db/complex-query";
import { systemid } from '../../atom/config';
import { exec } from 'child_process';

interface Message {
	page_no: number;
	risk_po_type_no: string;
}


// 表名	risk_point_name
// 标题	风险点名称
// 字段名称	字段标题	字段类型	字段长度	是否为空	是否主键
// _id	id	string	50	ⅹ	√
// risk_po_type_no	风险点类型编号	string	50	√	ⅹ
// risk_po_name_no	风险点名称编号	string	50	√	ⅹ
// risk_po_name	风险点名称	string	50	√	ⅹ



export default async function atom(msg: Message, action_id: string, session_id: string) {
	log('Service begin');

	const query = complex_query(action_id, session_id, systemid);
	const res = await query
		.add_field('risk_point_name', '_id', '_id')
		.add_field('risk_point_name', 'risk_po_type_no', 'risk_po_type_no').add_field('risk_point_name', 'risk_po_name_no', 'risk_po_name_no')
		.add_field('risk_point_name', 'risk_po_name', 'risk_po_name')
		.add_field('risk_point_type', 'risk_po_type_name', 'risk_po_type_name')
		.add_field('risk_point_type', 'risk_level', 'risk_level')
		.outer_left_join('risk_point_name', 'risk_point_type', ['risk_po_type_no', 'risk_po_type_no'])
		.where_like('risk_point_name', 'risk_po_type_no', '%' + msg.risk_po_type_no + '%')
		.page(20, 1).exec();




	const { prepare: p, exec: e } = count(action_id, session_id, systemid);
	p('risk_point_name', { risk_po_type_no: { $like: "%" + msg.risk_po_type_no + "%" } });
	const [c] = await e();


	log('Service end');
	return { res, c };
}
